Fourier-based misfire detection strategy

ABSTRACT

A computer implemented system for engine misfire detection employs a crankshaft-originated speed signal that includes normal variability due to target wheel tooth error and the like. A Discrete Fourier Transform (DFT) is performed on the speed signal to convert it into a frequency-domain raw misfire detection metric. The system is configured to normalize the raw misfire detection metric using a non-misfire metric that is obtained by and corresponds to non-misfire operation of an internal combustion engine. A resulting normalized misfire detection metric has such normal variations removed leaving variations attributable to misfire. The system detects a misfire when the normalized misfire detection metric exceeds a predetermined threshold and is bounded by a predetermined phase angle region. The system detects both continuous misfire as well as intermittent misfire. The system also detects single cylinder misfire and multiple cylinder misfire.

BACKGROUND OF THE INVENTION

1. Related Field

The present invention relates generally to misfire detection in aninternal combustion engine, and more particularly to a Fourier-basedmisfire detection strategy.

2. Description of the Related Art

A misfire condition in an internal combustion engine results from eithera lack of combustion of the air/fuel mixture, sometimes called a totalmisfire, or an instability during combustion, sometimes referred to as apartial misfire. In such case, torque production attributable to themisfiring cylinder decreases. Additionally, uncombusted fuel enters theexhaust system, which is undesirable. Because of the possible impact onthe ability to meet certain emission requirements, including CaliforniaAir Resource Board (CARB) emission-related requirements, engine misfiredetection is needed.

Misfire detection is desired across the full speed and load operatingregion of a vehicle. Production algorithms have been developed andemployed successfully on four and six cylinder engines since themid-90s. In this regard, the basic strategy employed measures the periodfor each cylinder event (i.e., 180 degrees for a 4 cylinder and 120degrees for a 6 cylinder) and detects misfire by monitoring thevariation in the time periods. Through digital processing techniques,the reference periods can be compared against each other to determine ifmisfire occurred and in which cylinder(s). Even on these low number ofcylinder engines (i.e., 4 and 6 cylinders), there is often the need torequest exceptions from CARB due to the lack of detectability.Detectability issues can be caused by a variety of root sources. First,low load and high speed (or frequency) make detectability more difficultsince the underlying misfire disturbance will have less impact on themechanical crank system. Second, increasing the inertia of the drivelineand lowering the cylinder contribution, as which occurs with highernumber of cylinder engines, also compromises detectability. Engineresonance effects from crankshaft oscillations can also complicatedetection. Finally, variations between different engines and thecorresponding target wheels (i.e., used in producing thecrankshaft-originated speed signal) also complicates detection.

Various approaches for misfire detection have been proposed in the art.For example, U.S. Pat. No. 5,487,008 entitled “METHOD AND SYSTEM FORDETECTING THE MISFIRE OF A RECIPROCATING INTERNAL COMBUSTION ENGINE INFREQUENCY DOMAIN” issued to Ribbens et al., disclose the use of aDiscrete Fourier Transform (DFT) in the context of misfire detection.However, Ribbens et al. do not disclose strategies for effectivelyaddressing the above-noted shortcomings in the art. Additionally,existing strategies in the art using frequency domain analysis todetermine misfire have been known to use adaptive thresholds. However,such approaches still encounter the same shortcoming noted above.

There is therefore a need for a system and method to minimize oreliminate one or more of the problems as set forth above.

SUMMARY OF THE INVENTION

It is one object of the present invention to effectively discriminate amisfire from normal combustion, especially across wide ranges of enginespeed and load, as well as for a higher number of cylinder engines thanis conventional (e.g., eight cylinder engines).

In conventional misfire detection systems for reciprocating internalcombustion engines of the type that use a crankshaft speed target wheel,variations in crankshaft speed due to tooth error and engine effectsoccur naturally (or are in other words inherent in the system). Althoughthere are tooth errors, engine variations, etc., that create deviationsin the crankshaft-originated speed signal, this condition may beconsidered “normal” (i.e., these deviations exist even in truenon-misfire conditions). However, such “normal” variations cannonetheless obscure variations in speed due to misfire, which canprevent accurate detection of or in other words mask misfire conditions.Prior systems that assess only the amplitude/phase of the spectralcomponents derived from the crankshaft-originated speed signal encounterdifficulty in certain circumstances distinguishing non-misfire andmisfire conditions.

According to the invention, it has been recognized that deviations from“normal” operation provide more insight into misfire than do absolutevariations (e.g., as expressed in the unaltered inherent amplitude andphase of spectral components over the operating region).

The present invention includes a method for misfire detection in aninternal combustion engine. The method includes several steps. The firststep involves producing a first signal (e.g., a crankshaft angular speedsignal) corresponding to rotational characteristics of an enginecrankshaft taken at selected times. The first signal includes a measureof variability corresponding to characteristics unique to the internalcombustion engine system. For example only, where a target wheel is usedto produce the first signal, the measure of variability may includetooth error. Additionally, variability due to engine and/or drivelineuniqueness is also recognized. It is contemplated that this variabilityis “normal” insofar as it exists in the true non-misfire operation ofthe internal combustion engine. Misfire may contribute its own variationto the speed signal.

The next step involves converting the first signal (e.g., the speedsignal) into a frequency-domain misfire detection metric havingcomponents selected from an engine cycle frequency and harmonic ordersthereof. In a preferred embodiment, this converting step may include thesub-step of performing a Discrete Fourier Transform (DFT). The next stepinvolves normalizing the misfire detection metric using a non-misfiremetric corresponding to non-misfire operation of the internal combustionengine. The normalizing step is configured to remove the “normal”measure of variability described above. The final step involvesdetecting a misfire condition when the normalized misfire detectionmetric exceeds a predetermined threshold and identify the origin of themisfire (i.e., the individual cylinder or multiple cylinder) byconsidering the phase of the misfire detection metric.

One advantage of the present invention is that it provides for accurateand effective misfire detection across a broad range of engine speed andload, as well as with internal combustion engines with a higher numberof cylinders.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will now be described, by way of example, withreference to the accompanying drawings, wherein like reference numeralsidentify identical components in the several figures, in which:

FIG. 1 is a simplified diagrammatic and block diagram view of a misfiredetection system in accordance with the present invention.

FIGS. 2 and 3 are magnitude and phase versus harmonic order diagramsillustrating distinctions between a “normal,” non-misfire condition anda misfire condition.

FIG. 4 is a phase versus speed diagram illustrating phase-based cylinderidentification for a single cylinder misfire condition.

FIG. 5 is a phase versus speed diagram illustrating difficulties usingconventional phase-based identification for multiple cylinder (e.g.,cylinder pair) misfire conditions.

FIGS. 6 and 7 are magnitude versus harmonic order diagrams illustratingthe effect of expanding the sampling interval from one engine cycle(FIG. 6) to three engine cycles (FIG. 7).

FIG. 8 is a phase versus speed diagram illustrating the use of amodified phase-based identification for multiple cylinder (e.g.,cylinder pair) misfire conditions.

FIG. 9 is a simplified flow chart diagram illustrating the method fordetecting misfire of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring now to the drawings wherein like reference numerals are usedto identify identical components, FIG. 1 shows an internal combustionengine system 10 including an internal combustion engine 12 whoseoperation is controlled by a programmed, electronic engine controlmodule (ECM) 14 or the like, as known generally in the art. System 10 isconfigured, as will be described and illustrated hereinafter, to provideimproved misfire detection as to either an individual cylinder ormultiple cylinder (e.g., a cylinder pair). System 10 includes improveddiscrimination capability that provides for more effective detection forhigher number cylinder engines as well as over greater engine speed/loadranges. System 10 generally employs frequency domain, Fourier techniquesto evaluate the spectral content of a crankshaft-originated speedsignal. Speed fluctuations due to misfire result in certain harmonicsbeing present in the frequency domain transformation of thecrankshaft-originated speed signal. The present invention providesmethods and systems to effectively separate harmonics which areindicative of misfire, as opposed to harmonics that are due to tootherror, engine variability and other influences that are not indicativeof a misfire. Accordingly, the accuracy and confidence of misfiredetection is improved.

With continued reference to FIG. 1, engine 12 includes a plurality ofcylinders, illustrated in exemplary fashion as a V-type, 8 cylinderengine where the cylinders are designated 16 ₁, 16 ₂, 16 ₃, . . . , 16₈. In one arrangement, for example, the firing order may be designatedas cylinders 1-8-7-2-6-5-4-3. Of course, other numbering schemes and/orfiring orders are possible, as known in the art. Moreover, the presentinvention is not limited to any particular number of cylinders, i.e., aneight cylinder engine as shown is exemplary only.

The basic arrangement of engine 12 is known in the art, and will not berepeated exhaustively herein in detail. However, it should be understoodthat each cylinder 16 ₁, 16 ₂, 16 ₃, . . . , 16 ₈ is equipped with acorresponding piston (not shown), which is connected to a commoncrankshaft 18, as shown by the dashed-line in FIG. 1. As known, thecrankshaft 18 is coupled to a powertrain (e.g., transmission and otherdrivetrain components—not shown) in order to provide power to a vehicle(not shown) for movement. Controlled firing of the cylinders causes thevarious pistons to reciprocate in their respective cylinders, causingthe crankshaft to rotate. There is a known relationship between theangular position of the crankshaft 18, and each of the pistons. Eachpiston, as it reciprocates, moves through various positions in itscylinder, and any particular position is typically expressed as acrankshaft angle with respect to top-dead-center position. In thewell-known 4 stroke engine (intake-compression-power-exhaust), two fullrevolutions (720 degrees) of the crankshaft 18 occur to complete oneengine cycle.

In this regard, FIG. 1 further shows a target wheel 20 and acorresponding sensor 22. Target wheel 20 is configured for rotation withcrankshaft 18. Target wheel 20 includes a plurality ofradially-outwardly projecting teeth 24 separated by intervening slots26. Target wheel 20 and sensor 22 are, in combination, configured toprovided an output signal 28 that is indicative of the angular positionof crankshaft 18. Output signal 28, as described below, may be used toderive a speed indicative signal.

One objective of the invention is to improve the detectability ofmisfire and thus it is necessary to process additional information overthe cylinder firing event. As described in the Background, it is knownto measure a time variation in the firing event period (720°/#cylinders) to determine if misfire occurred. Early systems used 2×, 3×and 4× target wheels for 4, 6, and 8 cylinder engines respectively. Inrecent years, higher count target wheels are more commonly employed onengines, with one common variant being the 58× (i.e., 60−2; 58 teethspaced around the wheel, spaced as though there were 60 evenly spacedteeth but with two teeth missing). In the illustrated embodiment, targetwheel 20 may be the 58× form target wheel known in the art. This form ofa target wheel 20 provides a rising edge in the output signal every 6degrees, with the exception of the 2 tooth gap, which as known is usedas a reference. A speed-based signal can be formed by determining thespeed, or a representative signal, every 6 degrees or multiples of 6degrees as typically only one edge is used.

FIG. 1 further shows an engine load indicative sensor such as an intakemanifold absolute pressure (MAP) sensor 30, and a camshaft positionsensor (CAM) 31. The MAP sensor 30 is configured to produce an outputsignal 32 indicative of manifold absolute pressure. The output signal 32is indicative of engine load. It should be understood that other signalsmay be used as a proxy for load, including but not limited to a mass airflow (MAF) signal or a throttle position signal. The CAM sensor 31 isconfigured to generate a CAM signal 33 that is indicative of whichrotation of the engine cycle the crankshaft is on. That is, thecrankshaft sensor output signal 28 alone is insufficient to determinewhether the crankshaft is on the first 360 degree rotation or on thesecond 360 degree rotation, which would together define an engine cyclefor a four-stroke engine.

With continued reference to FIG. 1, ECM 14 may include a control unit 34that is characterized by general computing capability, memory storage,input/output (interface) capabilities and the like, all as known in theart. ECM 14 is configured generally to receive a plurality of inputsignals representing various operating parameters associated with engine12, with three such inputs being shown, namely, crankshaft sensor outputsignal 28, MAP output signal 32 and CAM signal 33. ECM 14 is configuredwith various control strategies for producing needed output signals,such as fuel delivery control signals (for fuel injectors—not shown),all in order to control the combustion events, as well as spark timingsignals (for respective spark plugs—not shown). In this regard, ECM 14may be programmed in accordance with conventional, known air/fuelcontrol strategies and spark timing strategies.

In accordance with the present invention, control unit 34 of ECM 14 isfurther configured to perform the misfire detection methodology asfurther described herein. It should be understood that the functionaland other descriptions and accompanying illustrations contained hereinwill enable one of ordinary skill in the art to practice the inventivemisfire detection inventions without undue experimentation. It iscontemplated that the invention will preferably be practiced throughprogrammed operation (i.e., execution of software computer programs) ofcontrol unit 34. As used herein, the various metrics, thresholds, andthe like may be viewed as electronic signals although embodied insoftware as stored values.

Misfire Detection

Before proceeding to a detailed description of the present invention,further description as to context will be set forth. In order to form amore sensitive algorithm that will achieve the objects of the invention,it is initially contemplated that it is possible to use Fouriertechniques to evaluate the spectral content of a crank related signal.Options for processing include, speed and acceleration as well asrelated scaled metrics. The basic speed equation, designated equation(1), that can be used in an embodiment of the invention is as follows:

$\begin{matrix}{{\omega(\theta)} = \frac{\Delta\theta}{\Delta\; T}} & (1)\end{matrix}$

Processing already available in conventional implementations of controlunit 34 will make a speed reading or the like available at set angularposition increments dictated by the tooth spacing of the target wheel20. In the illustrated embodiment, the fixed, angular position samplingis advantageous since it allows the harmonic content to be determinedbased on orders of rotation, which are independent of the crankshaftaverage speed. It should be understood, however, that non-fixed(non-uniform) intervals may be used in accordance with the invention,albeit with increased processing requirements. In one embodiment,timestamps are recorded at each tooth interval of target wheel 20 (i.e.,an edge is available every six degrees, for example, with a (58+2)target wheel), and maintained in memory associated with control unit 34.This fixed angle sampling provides the raw data necessary to derive aplurality of different parameters associated with the rotation ofcrankshaft (as a function of time). As noted above, a speed signal maybe derived and used in accordance with the present invention.

Control unit 34 is thus programmed to employ digital processingtechniques, particularly those configured to convert time-domain data tofrequency domain data in order to analyze the spectral componentsassociated with the crankshaft rotation.

In this regard, in a preferred embodiment, a Discrete Fourier Transform(DFT) is programmed in control unit 34, and whose basic equations are asset forth below in equations (2) and (3):

$\begin{matrix}{{a(k)} = {\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)}{\mathbb{e}}^{{- j}\; k\;\frac{2\pi}{N}n}}}}} & (2) \\{{x(n)} = {\sum\limits_{n = 0}^{N - 1}{{a(k)}{\mathbb{e}}^{j\; k\;\frac{2\pi}{N}n}}}} & (3)\end{matrix}$

where x(n) is the speed waveform in the sampled-angle domain, a(k) isthe result of the DFT, which is a complex number that indicatesmagnitude and phase for the k^(th) harmonic order, and N is the totalnumber of points of the DFT. The variables n and k represent the nthspeed point and the k^(th) harmonic of the computation respectively.That is, the result of the DFT, as described in greater detail below fora constructed embodiment, includes as an initial matter both a realcomponent and an imaginary component (i.e., the complex quantityreferred to above). This in conventional parlance may be plotted on arectangular coordinate system, with the real component on the “x” axisand the imaginary component on the “y” axis. This complex quantity maybe equivalently represented as a magnitude and a corresponding phase,through well known relationships. Additionally, as used herein,reference to “order” or “harmonic order” refers to the order in the DFToutput (i.e., the variable k in equations (2) and (3) above). Therelationship of the harmonic order to the engine cycle frequency isdependent on the length of the period of the DFT. If the DFT period istaken across one engine cycle, then the first order would relate to theengine cycle frequency and the 2^(nd) order would relate to therotational frequency. If a longer period, such as 2 engine cycles, ischosen then the first order would now relate to ½ the engine cyclefrequency.

FIG. 1 further shows control unit 34 being coupled to a data structure36 or the like configured to store a variety of data employed incarrying out the present invention. It should be understood that some ofthe data is determined and stored in advance of the performance of thepresent invention, while other data is calculated during the performanceof the inventive method and stored temporarily. Data structure 36 may beimplemented in a separate memory from control unit 34 or may beimplemented in memory that is integral therewith. In this regard, FIG. 1further shows non-misfire metric data 38, speed data 40, threshold data42, misfire detection metric 44 and normalized misfire detection metricdata 46. Each of these will be described generally immediately belowwith further elaboration throughout the remaining specification.

The term metric as used in this specification refers to either theoutput of a calculation or as a quantity used in determining anotherquantity, which may in some instances comprise a complex quantity thatincludes a real part and an imaginary part. The non-misfire metric 38for example refers to complex quantities, for one or more orders ofinterest, that is stored in data structure 36, which characterizes the“normal” or non-misfire operation of internal combustion engine system10. In this regard, the non-misfire metric 38 inherently reflectsvariations that exist due to tooth errors (from target wheel 20), enginevariations as well as any other variations that exist other thanvariations due to misfire. The non-misfire metric 38, in one embodiment,may be defined for a range of engine speed and load (e.g., MAP) values.

Speed data 40 comprises, in one embodiment, an array of timestampinformation corresponding to the known, angular positions of crankshaft18 generated by way of information produced by target wheel 20 andsensor 22 during rotation. Speed data 40 may further comprisederivations of this information, in the form of a speed and/oracceleration signals, for example, as described above in equation (1).

Threshold data 42 comprises data values organized as a function of (andthroughout which are valued) engine speed and load (MAP). Threshold data42 may be further broken down into categories: (1) single or individualcylinder misfire threshold data; (2) multiple cylinder misfire thresholddata; and (3) single or individual cylinder (phase) identificationthreshold data; and (4) multiple cylinder (phase) identificationthreshold data. The term multiple cylinder misfire is used throughoutthis specification, and is meant to refer to at least one of adjacentpair cylinder misfire, opposed pair cylinder misfire, and at least twocylinders misfiring. The use of threshold data 42 will be described ingreater detail below.

Misfire detection metric data 44 refers to complex quantities, for oneor more orders of interest, that are stored in data structure 36 whichcharacterize the real-time operation of internal combustion enginesystem 10 under inspection. In this regard, the misfire detection metric44 inherently reflects both (1) variations that exist due to tootherrors (from target wheel 20), engine variations as well as any othervariations that exist other than variations due to misfire; and (2)variations that may exist due to cylinder misfire. It should also beunderstood that misfire detection metric 44 is a generic term used torefer to at least two different metrics: (1) single cylinder misfiredetection metric and (2) multiple cylinder misfire detection metric. Theapplications of these metrics will be set forth in greater detail below.

The normalized misfire detection metric 46 refers to a quantityresulting from the processing of two metrics: (1) the misfire detectionmetric 44 (real time measurement); and (2) the non-misfire metric 38(typically determined in advance). In one embodiment, the process toobtain the normalized misfire detection metric 46 involves subtractingthe non-misfire metric from the misfire detection metric, both complexquantities, on an order-by-order basis, calculating a respectivemagnitude and then summing the individual magnitudes. The normalizedmisfire detection metric 46, after it is determined, is then evaluatedrelative to certain components of threshold data 42 in order to arriveat a determination of whether a misfire has occurred, and if so, in whatindividual cylinder (or what multiple cylinders).

Control unit 34 is further configured to produce an output signalindicative of whether a misfire occurred, such as for example aninternal misfire condition flag 48. Additionally, control unit 34 may bestill further configured to generate an output signal identifying thesingle cylinder that misfired, or what multiple cylinders (e.g.,cylinder pair) that misfired, such as by a cylinder identification flag50. It should be understood that control unit 34 may be configured toproduce these flags as externally available electrical signals, and thatsuch signals would fall within the spirit and scope of the presentinvention.

In the case of continuous misfire detection, it is advantageous toconsider an evaluation period (hereafter sometimes referred to as the“sampling interval”) that is an integer multiple of the 720 degrees(i.e., two revolutions of the crankshaft 18 corresponding to an enginecycle period for a four-stroke engine). When this is done, the presenceof a misfire can be determined by which orders of the engine cycleperiod differ between normal and misfire events. In addition, the phaseof the DFT will indicate which specific cylinder or multiple cylindersmisfired. In the simplest cases, misfire can be expected to occur atrelatively low orders and have significant spectral content at theengine cycle frequency for single cylinder misfire and at 2× the enginecycle frequency for opposed pair misfire.

It should be understood that the present invention, while described inthe context of a preferred, four stroke engine embodiment, is equallyapplicable to two stroke engine embodiments.

FIGS. 2 and 3 are respective magnitude and phase (versus order) diagramsfor a specific speed, load and continuous misfire case for 100 enginecycles on a General Motors V-8 5.3 L internal combustion engine. In ageneral sense, and subject to further refinements set forth below, themagnitude and phase define a raw, unprocessed misfire detection metric.This is the complex quantity used to evaluate whether misfire hasoccurred. These charts relate to normal and cylinder 3 misfire of suchengine, running at an engine speed of 4000 rpm, with a loadcorresponding to 35 kPA (MAP). Each diagram compares, on a per-orderbasis, the relative magnitudes and phases for a “normal” (non-misfire)condition versus a cylinder 3 misfire condition.

In general, the light areas represent normal, non-misfire operation andthe black areas represent misfire cases. Taking the first order asexemplary (designated 52), note the distinction between misfire(designated 54) and non-misfire (designated 56). From FIGS. 2 and 3, itis clear that the two cases do differ, with the greatest differencebeing expressed in the first ten orders. Also, the phase for thespecific cylinder misfire is concentrated to a narrow band for the1^(st) order. Based on this information, misfire can be detected byamplitude of the order(s) and the specific cylinder can be determined byconsidering the phase.

FIGS. 4 and 5 are phase versus engine speed diagrams for single cylinderand the specific case of opposed pair cylinder misfires (meaning 1cylinder per rotation phased 360 degrees apart misfires), respectively.Conventional approaches have sought to use the phase information toidentify the cylinder(s) causing the misfire condition. As alluded toabove, the phase of key misfire harmonics relates to which cylinder(s)caused the misfire. FIGS. 4 and 5 show the impact of using the 1^(st)order for single cylinder and the 2^(nd) order for opposed pair cylinderidentification for the exemplary GM 5.3 L V-8 engine.

As shown in FIG. 4, for the case of a single cylinder misfire, theimpact of the misfire is sufficiently distinct to allow it to be relatedto which cylinder caused it despite variations in speed and load. Theangular spacing is 90 degrees, as would be expected, and the order isconsistent with the firing order of the engine.

FIG. 5 illustrates the phase versus speed relationship for the opposedpair cylinder misfire scenario. It can be seen that the degree ofdiscrimination, and thus the ability to make an accurate identificationof the cylinder pair involved in a pair misfire scenario, suffersgreatly as the speed is increased, due to the fact that the engine has anatural 2^(nd) order effect that increases with speed, which swamps theimpact of misfire itself.

Thus, the basic challenge is how to improve conventional Fourierapproaches for misfire detection while still having a result that can bepractically implemented. The first step is to improve the detectabilityof misfire by improving the discrimination capability. The first stepfor continuous misfire is to use a longer period for the DFT algorithmin order to better isolate the misfire related spectral content.

FIGS. 6 and 7 compare the differences of employing a sampling intervalfor the DFT over one engine cycle (FIG. 6) versus over three enginecycles (FIG. 7). From the FIGS. 6 and 7, it is clear that greaterperiods can be beneficial in terms of reducing the noise and creating aclearer distinction between normal and misfire events. Again, the lightareas are normal, non-misfire events while the dark areas are misfireevents.

As can be seen from FIGS. 6 and 7, particularly FIG. 7, the differencebetween normal events and misfire events can be observed in severalorders and it may be desirable to combine the effect of these orders. Asthe result of the DFT contains both magnitude and phase, a metric thatuses both components can be found to improve the detection capability ofthe inventive process.

In accordance with the invention, a new metric is used for detectingmisfire that seeks to remove the normal variability that inherentlyexists, leaving just variability that may exist due to engine misfire.This is known herein as a normalized misfire detection metric. Severalnormalized approaches were considered for normalizing the raw misfiredetection metric. In a preferred embodiment, the normalized misfiredetection metric 46 is as follows in equation (4):Normalized Misfire Detection Metric 46=(|a ₁ −ā ₁ _(—) _(n)|)+(|a ₂ −ā ₂_(—) _(n)|)+ . . . +(|a _(p) −ā _(p) _(—) _(n)|)  (4)

where the a_(x) term represents the complex harmonic value from the DFT,or in other words, the misfire detection metric 44, while the ā_(1n)term represents the normal (non-misfire) average complex value for theharmonic of interest, or in other words, the non-misfire metric 38.Equation (4) may be referred to herein alternatively as the Sum of theComplex Magnitudes.

Note that a constituent component of a suitable metric to detect misfirewill implement the concept of having a measure of what the “normal”characteristics are. The basis for wanting to find the variation from“normal” allows for a basic threshold test to be used. Furthermore, theconcept of “normal” accounts for engine and target wheel variation,among other characteristics unique to a particular engine system 10. Thetiming of when to define the “normal” metric (e.g., non-misfire metric38) may occur before or during run time operation of a vehicle, and, forexample, may be based on either a coast down test or a guaranteedmisfire free condition. In some embodiments, it may be sufficient tolearn engine variation on a test engine platform and only, if required,learn the target wheel in the application (i.e., during real-timeoperation). Furthermore, only key harmonics must be normalized since thealgorithm referred to in equation (4) may optionally not require use ofthe full DFT results.

As described above, the phase algorithm (e.g., FIG. 5) typically usedfor Fourier misfire detection is inadequate in some cases foridentifying the cylinder pair which misfired. For these cases, it isnecessary to consider the phase of the complex vector difference betweennormal and misfire. This is inherently part of the Sum of ComplexMagnitudes algorithm (i.e., may use an intermediate calculation madeduring the evaluation of equation (4), from which a phase iscalculated). When this algorithm is considered the cylinderidentification becomes more distinct as is seen in FIG. 8.

FIG. 8 is a graph showing phase versus speed for a complex second orderdifference vector. As can be seen in FIG. 8, which shows the opposedpair misfire identification based on the phase of the 2^(nd) Ordersub-component of the Sum of Complex Magnitudes Metric (equation (4)),the cylinder pair identification is now substantially easier. This isdue to the effect of the 2^(nd) order crankshaft effect being removedfrom the complex vector quantity.

Work has been done that indicates that only a limited number of teeth ofthe 58× wheel are needed and judicious selection of the teeth used canavoid having to deal with gap-filling equations. Samples at 20× percrankshaft rotation were found to be adequate for misfire detectionsince only the low order harmonics were of interest.

Continuous Misfire Detection Method

FIG. 9 is a simplified flow chart of the method of the presentinvention. One embodiment is a continuous misfire detection embodimentand will be described immediately below. An alternate embodiment is arandom/low level misfire embodiment and will be described thereafter.The method in FIG. 9 is repeatedly evaluated over a preselectedevaluation window. In one embodiment, the preselected evaluation windowis defined as two engine cycles. Accordingly, the methodology to bedescribed in connection with FIG. 9 is to be repeated every two enginecycles (i.e., 4× crankshaft rotations), either as a batch or incrementaltask under the execution of control unit 34. The method begins with step58.

Step 58 involves producing a speed signal. The speed signal preferablycorresponds to an angular speed of the engine crankshaft 18 taken atselected times. The speed signal includes a measure of variabilitycorresponding to characteristics unique to the internal combustionengine system 10. For example, such measure of variability may includespeed variations due to tooth error, engine variability, etc. The speedsignal may or may not include variability due to cylinder misfire.

Step 58 may include the sub-step of defining a sampling interval duringwhich the speed signal is determined. In a continuous misfire detectionembodiment, the speed signal is determined over two engine cycles.

From the timestamp information stored in speed data 40 a speed signal isderived for each tooth over the period defined. In one embodiment, thespeed signal (in RPM) is preferred, and is defined as follows inequation (5). The parameter K_(scaling) is selected to translate theunique engine system 10 particulars into revolutions per minute (RPM).

$\begin{matrix}{{\omega(\theta)} = {\frac{\Delta\theta}{T_{2} - T_{1}}K_{scaling}}} & (5)\end{matrix}$

The method then proceeds to step 60. Step 60 involves converting thespeed signal into a frequency domain (unprocessed, raw) misfiredetection metric having components selected from an engine cyclefrequency and harmonic orders thereof. Converting step 60 may furtherinclude the step of selecting one or more harmonic order(s). Forexample, based on the speed and load point (MAP), the method isconfigured to select which engine orders should be used for evaluatingand detecting misfire. Generally speaking, the engine orders that relateto misfire should be the engine cycle order for single cylinder misfire,and the engine rotation order for cylinder pair misfire. There may beother orders that contain useful information depending on the engine andoperating point.

Converting step 60 may be performed by the sub-step of performing aDiscrete Fourier Transform (DFT) for each harmonic order previouslyselected to be of interest (e.g., based on speed and load, engine type,etc.). Equation (6) may be used to perform the DFT:

$\begin{matrix}{a_{k} = {\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)}{\mathbb{e}}^{{- j}\; k\;\frac{2\pi}{N}n}}}}} & (6)\end{matrix}$

where a_(k) is the amplitude of the DFT at the k^(th) harmonic. The terma_(k) is the non-normalized (raw) misfire detection metric 44, which isa complex quantity having real and imaginary parts thereof, as shown inequation (7):

$\begin{matrix}{a_{k} = {{\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\cos\left( {k\;\frac{2\pi}{N}n} \right)}}}} - {j\;\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\sin\left( {k\;\frac{2\pi}{N}n} \right)}}}}}} & (7)\end{matrix}$

The real and imaginary parts of equation (7) are identified in equations(8) and (9) respectively:

$\begin{matrix}{a_{k\_ real} = {\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\cos\left( {k\;\frac{2\pi}{N}n} \right)}}}}} & (8)\end{matrix}$

$\begin{matrix}{a_{k\_ imag} = {{- \frac{1}{N}}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\sin\left( {k\;\frac{2\pi}{N}n} \right)}}}}} & (9)\end{matrix}$

For the GM engine described above, two engine cycles were selected(i.e., as the repeating evaluation window). In this regard, the numberof samples used was N=80 points, spread out over 1440° of crankshaftrotation (e.g., 4 revolutions, 2 engine cycles). Two different misfiredetection metrics 46 are contemplated in accordance with one embodimentof the present invention, with one order each. For this embodiment, fora single cylinder misfire detection metric, the selected order is k=2 or2^(nd) order (engine cycle frequency), while for a cylinder pair misfiredetection metric, the selected order is k=4 or 4^(th) order (rotationalfrequency). For reference, the mean value or 0^(th) order corresponds tok=0. As indicated above, since the main evaluation window was selectedto be two engine cycles, these foregoing calculations are made every twoengine cycles. It should be understood that if the evaluation windowwere only one engine cycle, then the fundamental (k=1) and the 2^(nd)harmonic (k=2) would be used. The method then proceeds to step 62.

Step 62 involves normalizing the raw misfire detection metric 44 (eachone of a plurality of misfire detection metrics to the extent multiplemetrics are used). The normalizing step 62 uses the non-misfire metric38, which corresponds to a non-misfire operating condition of theinternal combustion engine system 10. The effect of the normalizing step62 is to obtain a normalized misfire detection metric 46 that hasremoved (or substantially removed) the normal measure of variabilityexistent in the speed signal found in “normal” operation (i.e., withoutmisfire).

Normalizing step 62 may further include the sub-step of retrieving fromdata structure 36 a suitable values for the non-misfire metric 38 basedon engine speed and load. As indicated above, non-misfire metric 38 is acomplex quantity including both real and imaginary components. In oneembodiment, the data for the non-misfire metric 38 reflects thearithmetic mean values for that particular engine speed and load. Inanother embodiment, the data for the non-misfire metric 38 reflects thearithmetic average values for that particular engine speed and load.Other variations are possible, and remain within the spirit and scope ofthe present invention.

Normalizing step 62 may further include the sub-steps of firstsubtracting, on a per order basis, the non-misfire metric 38 from themisfire detection metric 44 to obtain constituent complex quantities(one for each order). Further sub-steps may include calculating arespective magnitude, again on a per order basis, and finally summingall the individual, magnitude terms, as seen by reference to thegeneralized equation (10) below:Normalized Misfire Detection Metric 46=(|a ₁ −ā ₁ _(—) _(n)|)+(|a ₂ −ā ₂_(—) _(n)|)+ . . . +(|a _(p) −ā _(p) _(—) _(n)|)  (10)

Each constituent item is a complex number, so the real and imaginaryportions need to be subtracted and then the magnitude found for eachterm. The individual magnitudes are then summed. Note, that for equation(10), the present invention contemplates at least two metrics: (1) onefor a single cylinder misfire; and (2) one for a multiple cylinder(e.g., cylinder pair) misfire. The method then proceeds to step 64.

Step 64 involves detecting a misfire condition when the normalizedmisfire detection metric 46 satisfies a predetermined threshold. Thedetecting step 64 may include the sub-steps of determining prevailingengine speed and load parameter values, and retrieving a predeterminedthreshold value based on the engine speed and load (as well as based onsingle cylinder misfire or multiple cylinder misfire). Note this is nota complex quantity in light of the calculation in equation (10), butrather just a magnitude. The method proceeds to step 66.

Step 66 involves generating an output signal indicating the misfirecondition (either single cylinder misfire flag, multiple cylindermisfire flag, or set flags for both). Outputting step 66 may alsoinvolve generating an identification of the single cylinder thatmisfired, or the multiple cylinders involved in the misfire. Thesub-step of generating the cylinder identification may involvedetermining the phase of the normalized misfire detection metric 46 or aspecific order of the metric. This is calculated on a fashion similar toequation (10) except that after the subtraction step, a phase term isobtained from a selected term (order). In an alternate embodiment, a sumof the phases (i.e., from the individual terms) may be calculated andused.

Random/Low Level Misfire

As described above, another embodiment of the present invention isadapted to improve detectability of misfires that occur randomly or at alow level. Random or low level misfires are slightly different thancontinuous misfires as a set harmonic pattern does not get establishedon the crankshaft. When a set pattern repeats itself and is periodicwith the engine cycle period, it is irrelevant when the DFT begins sinceas long as the period is a multiple of an engine cycle the onlydifference will be in the phase of the results. A single perturbation(e.g., as by a random misfire) by contrast may slightly vary the speedof the crankshaft initially but whose impact on speed variationsubsequently diminishes. For random or low level misfire, it has beendiscovered that staggered algorithms are preferred to consistentlydetect misfire. In order to find misfire, it is essential that theenergy is concentrated in a window that a metric can view largelyuninterrupted. If for instance, only one repeating metric were used thenthe energy of a misfire could be spread between two consecutive readingswith neither being sufficient to trip a misfire flag.

The methodology may be assumed to be otherwise the same as the methodillustrated in FIG. 9 (and accompanying text above), subject to thechanges as set forth below. Note that the following is applicable todetection of single cylinder misfire—a separate method is performed todetect multiple cylinder misfire.

A DFT that preferably covers at least one engine cycle is started foreach rotation of crankshaft 18. It should be understood that the DFTperiod, however, can be shorter than, or longer than, one engine cyclewithout losing any generality, and still detect misfire. That is, arespective DFT is preferably performed over at least one engine cycle(i.e., 720 degrees), with a respective DFT commencing after eachrotation (i.e., 360 degrees). A DFT that is at least one engine cyclelong is started each rotation of the crankshaft.

The speed signal is calculated as described above. Namely, from thetimestamp information stored in speed data 40, a speed signal is derivedfor each tooth over the period defined. In one embodiment, the speedsignal (in RPM) is preferred, and is defined as follows in equation(11).

$\begin{matrix}{{\omega(\theta)} = {\frac{\Delta\theta}{T_{2} - T_{1}}K_{scaling}}} & (11)\end{matrix}$

Next, the step of converting, as above, may further include the step ofselecting a harmonic order. For example, based on the speed and loadpoint (MAP), the method is configured to select which engine ordersshould be used for the misfire calculation.

Next, again as above, the converting step includes the sub-step ofperforming a DFT for each selected order, in accordance with equation(12) below:

$\begin{matrix}{a_{k} = {\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)}{\mathbb{e}}^{{- j}\; k\;\frac{2\pi}{N}n}}}}} & (12)\end{matrix}$

The real and imaginary parts of the DFT in equation (12) are as setforth in equations (13) and (14) below:

$\begin{matrix}{a_{k\_ real} = {\frac{1}{N}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\cos\left( {k\;\frac{2\pi}{N}n} \right)}}}}} & (13) \\{a_{k\_ imag} = {{- \frac{1}{N}}{\sum\limits_{n = 0}^{N - 1}{{x(n)} \cdot {\sin\left( {k\;\frac{2\pi}{N}n} \right)}}}}} & (14)\end{matrix}$

For the GM engine described above, one engine cycle was selected (i.e.,as the repeating evaluation window). In this regard, the number ofsamples used was N=40 points. Two different single cylinder misfiredetection metrics 46 are contemplated in accordance with thisembodiment, with one order each. The metrics are identical although theyare offset by one crankshaft rotation.

As above, the next step may optionally include retrieving and using mean(or average) non-misfire metric values based on engine speed and load,as described above. For random or low level misfire, this step canpossibly be skipped as neither a target wheel error (generally speaking)or an engine harmonic is expected at the engine cycle frequency.Instead, it is possible to directly use the magnitude. In a generalsense, other engines may require content other than the fundamental socombining multiple harmonics and normalizing them could still beadvantageous.

The next step involves normalizing the misfire detection metrics toobtain a pair of normalized misfire detection metrics (each associatedwith a respective rotation of the engine cycle). The method isconfigured to calculate the misfire detection metrics from the data foreach order required and for each DFT performed, the result being setforth in equations (15) and (16) below:Misfire Metric Rotation 1=(|a ₁ −ā ₁ _(—) _(n)|)+(|a ₂ −ā ₂ _(—) _(n)|)+. . . +(|a _(p) −ā _(p) _(—) _(n)|)  (15)Misfire Metric Rotation 2=(|a ₁ −ā ₁ _(—) _(n)|)+(|a ₂ −ā ₂ _(—) _(n)|)+. . . +(|a _(p) −ā _(p) _(—) _(n)|)  (16)

These are complex numbers so the real and imaginary portions need to besubtracted and then the magnitude found for each term.

The next step involves performing a threshold test to see if eithermetric set out in equations (15) and (16) satisfy a predeterminedthreshold. If so, the method is configured to indicate which misfirecase has occurred. The threshold test will be dependent on speed andload. Additionally, the method is configured to identify the cylinderthat caused the misfire. In this embodiment, evaluating Metric 1 (1^(st)rotation DFT) is configured to detect misfire for cylinder 7, 6, 5 and2. Likewise, evaluating Metric 2 (2^(nd) rotation DFT) is configured todetect misfire for cylinders 8, 4, 3 and 1. The specific, singlecylinder that is detected as misfiring is identified based on phase.

There is also the caveat that misfires detected from certain cylindersmay actually be caused from the previous engine cycle due to when theDFT was started relative to Top Dead Center of the first cylinder in theengine cycle. In this case, the steps that should be followed are: (a)for the speed and load point, lookup the threshold value; (b) determineif the metrics exceed the threshold value; (c) choose the larger metric;(d) if the phase is valid to indicate a misfire then indicate therespective cylinder; (e) if the phase is out of bounds, check the phaseof the lower metric; (f) if the lower metric is above the threshold andthe phase in range from step (e), then set the misfire flag and cylinderidentification.

1. A method for misfire detection in an internal combustion enginesystem, comprising the steps of: producing a first signal correspondingto rotational characteristics of an engine crankshaft taken at selectedtimes, said first signal including a measure of variabilitycorresponding to characteristics unique to the internal combustionengine system irrespective of misfire; converting the first signal intoa frequency-domain misfire detection metric having components selectedfrom an engine cycle frequency and harmonic orders thereof; normalizingsaid misfire detection metric using a non-misfire metric correspondingto a non-misfire operating condition of the internal combustion enginesystem to remove said measure of variability; detecting a misfirecondition when the normalized misfire detection metric satisfies apredetermined threshold; identifying one of (i) an individual cylinderand (ii) multiple cylinders that misfired when said misfire condition isdetected as a function of a calculated phase.
 2. The method of claim 1further including the step of: selecting the first signal from the groupcomprising a crankshaft speed signal, a crankshaft acceleration signal,an inverse of the crankshaft speed signal and an inverse of thecrankshaft acceleration signal.
 3. The method of claim 2 wherein thefirst signal comprises the inverse of the crankshaft speed signaldefining a delta time.
 4. The method of claim 2 wherein the first signalcomprises the speed signal.
 5. The method of claim 4 wherein said stepof producing a speed signal includes the sub-steps of: recording saidselected times at predetermined, known angular positions of saidcrankshaft; developing said speed signal in accordance with said known,angular positions and said recorded times.
 6. The method of claim 1wherein said internal combustion engine system includes a target wheelconfigured for rotation with said crankshaft, said target wheel beingconfigured for use with a crankshaft sensor for sensing an angularposition of said crankshaft, said target wheel including a plurality ofradially-outwardly projecting teeth separated by intervening slots, saidmeasure of variability including deviations due to tooth errors andengine variations.
 7. The method of claim 6 further including the stepof: establishing said non-misfire metric as a function of engine speedand load on a per harmonic order basis.
 8. The method of claim 7 furtherincluding the steps of: determining engine operating speed and loadparameters; retrieving values for said non-misfire metric as a functionof said determined engine operating speed and load parameters.
 9. Themethod of claim 8 wherein said step of determining said speed and loadparameters includes the sub-step of measuring a manifold absolutepressure (MAP) value associated with said internal combustion enginesystem.
 10. The method of claim 8 wherein said step of determining saidspeed and load parameters include the sub-step of measuring a mass airflow (MAF) value associated with said internal combustion engine system.11. The method of claim 8 wherein said step of determining said speedand load parameters include the sub-step of measuring a throttleposition value associated with said internal combustion engine system.12. The method of claim 6 wherein said converting step includes thesub-step of: defining a sampling interval during which said first signalis defined in N samples; selecting at least one harmonic order; applyinga Discrete Fourier Transform (DFT) to the first signal comprising Nsamples to obtain said misfire detection metric for the selectedharmonic order.
 13. The method of claim 12 wherein said step ofselecting a harmonic order includes selecting a plurality of harmonicorders.
 14. The method of claim 13 wherein said misfire detection metriccomprises a real portion and an imaginary portion, said step ofselecting at least one harmonic order comprising the sub-step of:selecting one of (i) individual cylinder and (ii) multiple cylindermisfire detection; defining said at least one harmonic order as theengine cycle order when individual cylinder misfire detection isselected; defining said at least one harmonic order as the enginerotation order when multiple cylinder misfire detection is selected. 15.The method of claim 14 wherein said multiple cylinder misfirecorresponds to at least one of an adjacent pair cylinder misfire,opposing pair cylinder misfire and at least a plurality of cylindermisfiring.
 16. The method of claim 14 further comprising the step of:defining said sampling interval as two engine cycles; selecting thenumber of samples N during said sampling interval from a range ofbetween about 80 and 240 and preferably
 80. 17. The method of claim 14wherein said sampling interval is a first sampling interval and saidstep of applying a DFT is a first DFT, said method further including thesteps of: defining a second sampling interval over which a second DFT isperformed; staggering the first and second sampling intervals by apredetermined amount for detecting random or low level misfire.
 18. Themethod of claim 17 wherein said predetermined amount of staggeringcorresponds to one crankshaft revolution, and said first and secondsampling intervals correspond to one engine cycle.
 19. The method ofclaim 18 wherein said step of normalizing said misfire detection metricis performed for each of the first and second sampling intervals.